// import com.alibaba.druid.DbType;
// import com.alibaba.druid.sql.parser.Keywords;
// import com.alibaba.druid.sql.parser.Lexer;
// import com.alibaba.druid.sql.parser.SQLParserFeature;
// import com.alibaba.druid.sql.parser.Token;

// import java.util.HashMap;
// import java.util.Map;
#pragma once
#include "../../../../utils/common_ptr.h"
#include "../../../parser/Lexer.h"

class HiveLexer : public Lexer
{
public:
  static Keywords_ptr DEFAULT_HIVE_KEYWORDS;

  HiveLexer(string_ptr input);

  HiveLexer(string_ptr input, SQLParserFeature_list_ptr features);

  void scanString();

  void scanComment();

private:
  static BOOL_ptr __init;
  static BOOL_ptr init();
};
